/**  
 * All rights Reserved, Designed By www.flksh.com
 * @date:   2017-11-13 19:14:27   
 * @Copyright: 2013-2017 www.flksh.com Inc. All rights reserved. 
 * 注意：本内容仅限于上海福乐康社区养老服务有限公司内部传阅，禁止外泄以及用于其他的商业目
 */
package com.zx.cloud.domain;

import java.time.OffsetDateTime;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.zx.cloud.model.BasicDomain;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.zx.cloud.util.converter.jackson.OffsetDateTimeToIso8601Serializer;

import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * 
 * zx_client_auth-
 *
 */
@ToString
@EqualsAndHashCode(callSuper = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class ClientAuth extends BasicDomain{

	private static final long serialVersionUID = 1L;
    
	/**
	 * 用户id
	 */
	@ApiModelProperty(value = "用户id")
	 private Long clientId;
	/**
	 * 身份证认证   0-未认证  1-认证通过  2-认证失败  3-认证中
	 */
	@ApiModelProperty(value = "身份证认证   0-未认证  1-认证通过  2-认证失败  3-认证中")
	 private Integer idState;
	/**
	 * 身份证认证时间
	 */
	@ApiModelProperty(value = "身份证认证时间")
	@JsonSerialize(using = OffsetDateTimeToIso8601Serializer.class)		
	 private OffsetDateTime idTime;
	/**
	 * 联系人认证状态   0-未认证  1-认证通过  2-认证失败  3-认证中
	 */
	@ApiModelProperty(value = "联系人认证状态   0-未认证  1-认证通过  2-认证失败  3-认证中")
	 private Integer contactState;
	/**
	 * 通讯录审核时间
	 */
	@ApiModelProperty(value = "通讯录审核时间")
	@JsonSerialize(using = OffsetDateTimeToIso8601Serializer.class)		
	 private OffsetDateTime contactTime;
	/**
	 * 银行卡认证状态   0-未认证  1-认证通过  2-认证失败  3-认证中
	 */
	@ApiModelProperty(value = "银行卡认证状态   0-未认证  1-认证通过  2-认证失败  3-认证中")
	 private Integer bankCardState;
	/**
	 * 银行卡认证时间
	 */
	@ApiModelProperty(value = "银行卡认证时间")
	@JsonSerialize(using = OffsetDateTimeToIso8601Serializer.class)		
	 private OffsetDateTime bankCardTime;
	/**
	 * 芝麻信用认证   0-未认证  1-认证通过  2-认证失败  3-认证中
	 */
	@ApiModelProperty(value = "芝麻信用认证   0-未认证  1-认证通过  2-认证失败  3-认证中")
	 private Integer zmState;
	/**
	 * 芝麻信用认证时间
	 */
	@ApiModelProperty(value = "芝麻信用认证时间")
	@JsonSerialize(using = OffsetDateTimeToIso8601Serializer.class)		
	 private OffsetDateTime zmTime;
	/**
	 * 个人信息认证状态
	 */
	@ApiModelProperty(value = "个人信息认证状态")
	 private Integer privateMsg;
	/**
	 * 个人信息认证时间
	 */
	@ApiModelProperty(value = "个人信息认证时间")
	@JsonSerialize(using = OffsetDateTimeToIso8601Serializer.class)		
	 private OffsetDateTime privateTime;
	/**
	 * 职业认证状态
	 */
	@ApiModelProperty(value = "职业认证状态")
	 private Integer jobState;
	/**
	 * 职业认证时间
	 */
	@ApiModelProperty(value = "职业认证时间")
	@JsonSerialize(using = OffsetDateTimeToIso8601Serializer.class)		
	 private OffsetDateTime jobTime;
	/**
	 * 学校认证状态
	 */
	@ApiModelProperty(value = "学校认证状态")
	 private Integer schoolState;
	/**
	 * 学校认证时间
	 */
	@ApiModelProperty(value = "学校认证时间")
	@JsonSerialize(using = OffsetDateTimeToIso8601Serializer.class)		
	 private OffsetDateTime schoolTime;
	/**
	 * 状态全认证标识：0 未完成 1：已完成 （目前不包括芝麻和联系人）
	 */
	@ApiModelProperty(value = "状态全认证标识：0 未完成 1：已完成 （目前不包括芝麻）")
	 private Integer flag;
    
    public ClientAuth(){
    
    }
    
    public Long getClientId() {
        return this.clientId;
    }
    
    public void setClientId(Long clientId) {
        this.clientId = clientId;
    }
    public Integer getIdState() {
        return this.idState;
    }
    
    public void setIdState(Integer idState) {
        this.idState = idState;
    }
    public OffsetDateTime getIdTime() {
        return this.idTime;
    }
    
    public void setIdTime(OffsetDateTime idTime) {
        this.idTime = idTime;
    }
    public Integer getContactState() {
        return this.contactState;
    }
    
    public void setContactState(Integer contactState) {
        this.contactState = contactState;
    }
    public OffsetDateTime getContactTime() {
        return this.contactTime;
    }
    
    public void setContactTime(OffsetDateTime contactTime) {
        this.contactTime = contactTime;
    }
    public Integer getBankCardState() {
        return this.bankCardState;
    }
    
    public void setBankCardState(Integer bankCardState) {
        this.bankCardState = bankCardState;
    }
    public OffsetDateTime getBankCardTime() {
        return this.bankCardTime;
    }
    
    public void setBankCardTime(OffsetDateTime bankCardTime) {
        this.bankCardTime = bankCardTime;
    }
    public Integer getZmState() {
        return this.zmState;
    }
    
    public void setZmState(Integer zmState) {
        this.zmState = zmState;
    }
    public OffsetDateTime getZmTime() {
        return this.zmTime;
    }
    
    public void setZmTime(OffsetDateTime zmTime) {
        this.zmTime = zmTime;
    }
    public Integer getPrivateMsg() {
        return this.privateMsg;
    }
    
    public void setPrivateMsg(Integer privateMsg) {
        this.privateMsg = privateMsg;
    }
    public OffsetDateTime getPrivateTime() {
        return this.privateTime;
    }
    
    public void setPrivateTime(OffsetDateTime privateTime) {
        this.privateTime = privateTime;
    }
    public Integer getJobState() {
        return this.jobState;
    }
    
    public void setJobState(Integer jobState) {
        this.jobState = jobState;
    }
    public OffsetDateTime getJobTime() {
        return this.jobTime;
    }
    
    public void setJobTime(OffsetDateTime jobTime) {
        this.jobTime = jobTime;
    }
    public Integer getSchoolState() {
        return this.schoolState;
    }
    
    public void setSchoolState(Integer schoolState) {
        this.schoolState = schoolState;
    }
    public OffsetDateTime getSchoolTime() {
        return this.schoolTime;
    }
    
    public void setSchoolTime(OffsetDateTime schoolTime) {
        this.schoolTime = schoolTime;
    }

	public Integer getFlag() {
		return flag;
	}

	public void setFlag(Integer flag) {
		this.flag = flag;
	}
    
}
